<!-- 登录页 -->
<template>
  <el-container style="height: 100vh;
  background-image: linear-gradient(135deg, #1352F2, #3C82F5);
  overflow: hidden ;" >
    <el-header style="padding: 30px;">
      <el-row :gutter="10">
        <el-col :span="3">
          <img src="imgs/login/logo.png" style="height: 50px;">
        </el-col>
        <el-col :span="1">
          <img src="imgs/login/auto.png" style="height: 50px;">
        </el-col>
        <el-col :span="1">
          <img src="imgs/login/verticalLine.png" style="height: 50px;">
        </el-col>
        <el-col :span="19">
          <span style="font-size: 30px;color: #fff;font-weight: bold;">智慧车辆运营管理系统</span>

        </el-col>
      </el-row>
    </el-header>
    <el-main>
      <el-row :gutter="40">
        <el-col :span="16" :xs="24" :sm="24" :md="16" :lg="16" :xl="16">
          <img src="imgs/login/bg.png" style="width: 100%;margin-top: 60px">
        </el-col>
        <el-col :span="8" :xs="24" :sm="24" :md="8" :lg="8" :xl="8">
          <el-card style="margin-top: 80px">
            <h3 style="text-align: center">用户登录</h3>
            <el-form label-position="top">
              <el-form-item label="用户名">
                <el-input placeholder="请输入用户名" clearable v-model="user.username"></el-input>
              </el-form-item>
              <el-form-item label="密码">
                <el-input placeholder="请输入密码" show-password v-model="user.password"></el-input>
              </el-form-item>
              <el-form-item>
                <el-button type="primary" style="width: 100%" @click="login">登录</el-button>
              </el-form-item>
            </el-form>
            <div style="font-size: 14px;color: #666;text-align: center;padding: 15px 0">(体验账号：tom 密码：123456)</div>
          </el-card>
        </el-col>
      </el-row>
    </el-main>
  </el-container>
</template>

<script setup>
import  {ref} from "vue";
import axios from "axios";
import {ElMessage} from "element-plus";
import router from "@/router";
//定义对象用来保存表单就收的登录用户名和密码
const user = ref({
  username:'',
  password:''
})
//定义登录方法
const login = () => {
  console.log(user.value)
  //1.利用axios给后端发送请求,注意需安装且导入！
  axios.post(BASE_URL+'/v1/user/login',user.value)
      .then((response)=>{
    //2.在回调函数中处理后端返回的响应结果
    //后端响应的数据在response.data中，这个数据骑士就是后端返回的JsonResult
    // console.log(response.data);
    if (response.data.code == 2000){
          ElMessage.success('登录成功！')
        /*  console.log(response.data.data);
          console.log(JSON.stringify(response.data.data))*/
      //h5本地存储 localStorage:存储的是字符串类型的键值对(String key:String value)
      /* 将登录成功的用户信息存储到localStorage中
      * 注意：存储的是字符串类型的数据，所以需要将JS对象转为JSON字符串 */
      localStorage.setItem('user',JSON.stringify(response.data.data))
      //登录成功后会跳转到首页，router/index.js配置了会重定向到/user用户列表页
          router.push('/')
    }else if (response.data.code == 3001){ //效验不通过3001，显示不通过的具体原因
          ElMessage.error(response.data.data)
    }else{ //业务异常显示异常描述信息
          ElMessage.error(response.data.message)
      //登录失败清空输入框
          user.value = {username:'',password:''}
    }
  })
}

</script>



<style scoped>

</style>